package images;

import java.awt.*;
import java.util.*;
import javax.swing.*;



// classe a RENOMMER , nom de MERDE

public class TabsDeDroite extends JPanel{
    
    JTabbedPane mesTabs;
    ArrayList lesImages;
    
    Fichier[] monTab;
    
    int xApercu = 100;
    int yApercu = 100;
    
    public TabsDeDroite() {
        super();
        mesTabs = new JTabbedPane();
        this.setLayout(new BorderLayout());
        this.add(mesTabs,BorderLayout.CENTER);
        
        lesImages = new ArrayList();

        lesImages.add(new Fichier("C:\\images\\1.JPG"));
        lesImages.add(new Fichier("C:\\images\\2.JPG"));
        lesImages.add(new Fichier("C:\\images\\3.JPG"));
                lesImages.add(new Fichier("C:\\images\\4.JPG"));
        lesImages.add(new Fichier("C:\\images\\5.JPG"));
        lesImages.add(new Fichier("C:\\images\\6.JPG"));
                lesImages.add(new Fichier("C:\\images\\7.JPG"));
        lesImages.add(new Fichier("C:\\images\\8.JPG"));
        lesImages.add(new Fichier("C:\\images\\9.JPG"));
       
  /*
   * ajout de laurent pour que je puisse taffer sous linux
   * 
   *       
                lesImages.add(new Fichier("/media/sda1/images/1.JPG"));
        lesImages.add(new Fichier("/media/sda1/images/2.JPG"));
        lesImages.add(new Fichier("/media/sda1/images/3.JPG"));
                lesImages.add(new Fichier("/media/sda1/images/4.JPG"));
        lesImages.add(new Fichier("/media/sda1/images/5.JPG"));
        lesImages.add(new Fichier("/media/sda1/images/6.JPG"));
                lesImages.add(new Fichier("/media/sda1/images/7.JPG"));
        lesImages.add(new Fichier("/media/sda1/images/8.JPG"));
        lesImages.add(new Fichier("/media/sda1/images/9.JPG"));
        
     */    
        
        
        monTab = deTreeSetAVector(lesImages);
        
    //    maVueVignettes = new VueVignettes(this, monTab, xApercu, yApercu);
        
   
            JListVignettes laJListdesVignettes = new JListVignettes(this, monTab, xApercu, yApercu);
                   JScrollPane monScrollJList = new JScrollPane(laJListdesVignettes);
        mesTabs.add("Vue des Vignettes",monScrollJList);
        
        
        
        VueDetail maVueDetail = new VueDetail(this, monTab);
        mesTabs.add("VueDétaillée",maVueDetail);
        laJListdesVignettes.creerVignette();       
    }
    
    
       public Fichier[] deTreeSetAVector(ArrayList lesImages) {
        
        
        int nombreElements = lesImages.size();
        Fichier[] monVector = new Fichier[nombreElements];
        Iterator monIterator = lesImages.iterator();
        
        for (int i=0;i<nombreElements;i++) {
            if (monIterator.hasNext()){
                monVector[i] = (Fichier)monIterator.next();
            }
            
        }
        
        return monVector;
    }
    
    
    
    public void creerVueImage(Fichier uneImage, int index,int width , int height, int numeroRetour) {

        VueImage maVueImage = new VueImage(this,uneImage, index, width, height,numeroRetour);
        mesTabs.addTab(uneImage.getNom(),maVueImage);
        mesTabs.setTabComponentAt(mesTabs.indexOfComponent(maVueImage),new ButtonTabComponent(mesTabs,numeroRetour));
        mesTabs.setSelectedComponent(maVueImage);
    }
    
    public void creerVueImageBackground(Fichier uneImage,int index,int width , int height, int numeroRetour) {    // pour le clic molette, plus de selection de l'image

        VueImage maVueImage = new VueImage(this,uneImage, index, width, height, numeroRetour);
        mesTabs.addTab(uneImage.getNom(),maVueImage);
        mesTabs.setTabComponentAt(mesTabs.indexOfComponent(maVueImage),new ButtonTabComponent(mesTabs,numeroRetour));
        
        
    }
    
    
    
    public void fermetureVueImage(VueImage laTab, int numeroRetour) {
   
       mesTabs.setSelectedIndex(numeroRetour);
          mesTabs.remove(laTab);
       
       
    }
}
